<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>参考滚动父级元素是body-包裹的最近的父容器高度小于等于sticky 元素的高度会失效</title>
</head>

<body>
    在多级嵌套的情况下，如图例，box的实际参考滚动父级元素是body，但是外层还是有几层父级结构child、parent、container（实际应用场景可当做是设置sticky元素的外层layout布局等），
    <br />
    此时注意，如果包裹的最近的父容器高度小于等于sticky
    元素的高度，也是不生效的，
    <br />
    按道理说此时box应该是在参考的滚动父级元素body中进行sticky定位的，但是并不可以，虽然box的实际参考滚动父级元素是body，
    <br />
    但是设置的sticky的元素box还是依赖于它包裹的最近的父容器child进行滚动，待child的高度滚动结束，box的sticky属性也会失效
    <br />
    ————————————————
    版权声明：本文为CSDN博主「REX_PERSIST」的原创文章，遵循CC 4.0 BY-SA版权协议，转载请附上原文出处链接及本声明。 <br />
    原文链接：https://blog.csdn.net/weixin_53334387/article/details/123399044
    <div class="container">
        container
        <div class="parent">
            parent
            <div class="child">
                child
                <div class="box">box</div>
            </div>
        </div>
        <div class="borther"></div>
    </div>
    <style>
        .container {
            width: 700px;
            height: 2900px;
            margin-top: 200px;
            background-color: bisque;
            padding-top: 80px;
            /* overflow: auto; */
        }

        .parent {
            padding-top: 80px;
            width: 600px;
            height: 500px;
            background-color: aqua;
        }

        .child {
            width: 500px;
            padding-top: 50px;
            height: auto;
            /*父元素高度自动计算*/
            background-color: red;
        }

        .box {
            width: 500px;
            height: 200px;
            background-color: blueviolet;
            position: sticky;
            top: 0;
        }
    </style>


</body>

</html>